#ifndef VGA_H
#define VGA_H

// VGA coontrol registers ports
#define VGA_ADDR		0x3D4
#define VGA_DATA		0x3D5

// VGA miscellaneous output register port
#define VGA_IOMISC_R	0x3CC
#define VGA_IOMISC_W	0x3C2

// VGA text-mode framebuffer
#define VGA_TEXT_BUF	0xB8000

// VGA monochrome text-mode framebuffer
#define VGA_MONO_BUF	0xB0000

// VGA text-mode registers
#define VGA_CURS_HI		0xE
#define VGA_CURS_LO 	0xF

// VGA text-mode colors
#define VGA_BLACK		0x0
#define VGA_BLUE	 	0x1
#define VGA_GREEN	 	0x2
#define VGA_CYAN	 	0x3
#define VGA_RED		 	0x4
#define VGA_MAGENTA	 	0x5
#define VGA_BROWN	 	0x6
#define VGA_LIGHTGREY 	0x7
#define VGA_DARKGREY 	0x8
#define VGA_LIGHTBLUE	0x9
#define VGA_LIGHTGREEN	0xA
#define VGA_LIGHTCYAN	0xB
#define VGA_LIGHTRED	0xC
#define VGA_LIGHTMAG	0xD
#define VGA_LIGHTBROWN	0xE
#define VGA_WHITE	 	0xF

// Number of columns and rows in VGA text-mode
#define VGA_COLS		80
#define VGA_ROWS		25
#define VGA_SIZE		(VGA_ROWS * VGA_COLS)


#endif  // VGA_H